home *** CD-ROM | disk | FTP | other *** search
/ Gekkan Dennou Club 147 / Gekkan Dennou Club - 2000.8 Vol. 147 (Japan).7z / Gekkan Dennou Club - 2000.8 Vol. 147 (Japan) (Track 1).bin / docs / ippon / ver / 004 / ippon004.lzh / player.c < prev    next >
C/C++ Source or Header  |  2000-07-07  |  1KB  |  79 lines

  1. /* player.c */
  2.  
  3. #include <sys/iocs.h>
  4. #include <xsp2lib.h>
  5.  
  6. #include "main.h"
  7. #include "player.h"
  8.  
  9. enum {
  10.     PLAYER_PT_RIGHT2 = 0,    /* 自機が一番右に傾いている時のパターン */
  11.     PLAYER_PT_RIGHT1,    /*  〃 少し右に     〃      */
  12.     PLAYER_PT_CENTER,    /*  〃 正面を向いている時のパターン */
  13.     PLAYER_PT_LEFT1,    /* 自機が少し右に傾いている時のパターン */
  14.     PLAYER_PT_LEFT2        /*  〃 一番右に     〃      */
  15. };
  16.  
  17.  
  18.  
  19. /* ゲーム開始時に呼ばれる */
  20. void PlayerInit (void)
  21. {
  22. }
  23.  
  24.  
  25.  
  26. /* プレイヤー出現時に呼ばれる */
  27. void PlayerAlloc (void)
  28. {
  29.     player->x = 144;
  30.     player->y = 144;
  31. }
  32.  
  33.  
  34.  
  35. /* 垂直同期ごとに呼ばれる */
  36. void PlayerMove (void)
  37. {
  38.     int j;            /* ジョイスティックの入力 */
  39.  
  40.     j = _iocs_joyget (0);    /* ジョイスティック0番 */
  41.  
  42.     /* [A] ボタンが押されたか? */
  43.     if ((j & 0b00100000) == 0)
  44.         game_over = !0;    /* ゲームオーバーに */
  45.  
  46.     /* 自機の上下移動処理 */
  47.     switch (j & 0b0011) {
  48.     case 0b0010:        /* 上 */
  49.         player->y--;
  50.         break;
  51.     case 0b0001:        /* 下 */
  52.         player->y++;
  53.         break;
  54.     default:        /* それ以外 */
  55.         break;
  56.     }
  57.  
  58.     /* 自機の左右移動処理 */
  59.     switch (j & 0b1100) {
  60.     case 0b1000:        /* 左 */
  61.         player->x--;
  62.         break;
  63.     case 0b0100:        /* 右 */
  64.         player->x++;
  65.         break;
  66.     default:        /* それ以外 */
  67.         break;
  68.     }
  69.  
  70.     xobj_set (player->x, player->y, obj_player + PLAYER_PT_CENTER, 0x073f);        /* 自機を表示 */
  71. }
  72.  
  73.  
  74.  
  75. /* プレイヤー消去時に呼ばれる */
  76. void PlayerFree (void)
  77. {
  78. }
  79.